package com.cqh.recruit.pojo.vo;

import com.baomidou.mybatisplus.annotation.*;

import java.time.LocalDate;
import java.time.LocalDateTime;

public class ActivityListVo {

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 活动名称
     */
    @TableField("name")
    private String aname;

    private String ename;
    /**
     * 活动开始时间
     */
    @TableField("activity_start_time")
    private LocalDate activityStartTime;

    /**
     * 活动详情
     */
    @TableField("activity_detail")
    private String activityDetail;

    /**
     * 活动结束时间
     */
    @TableField("activity_end_time")
    private LocalDate activityEndTime;

    /**
     * 报名开始时间
     */
    @TableField("signup_start_time")
    private LocalDate signupStartTime;

    /**
     * 报名结束时间
     */
    @TableField("signup_end_time")
    private LocalDate signupEndTime;

    /**
     * 活动图片URL
     */
    @TableField("image")
    private String image;

    /**
     * 活动状态：1-未开始，2-报名中，3-进行中，4-已结束，5-已取消
     */
    @TableField("status")
    private Integer status;

    /**
     * 活动地点
     */
    @TableField("location")
    private String location;

    /**
     * 活动容量/人数限制
     */
    @TableField("capacity")
    private Integer capacity;

    /**
     * 当前报名人数
     */
    @TableField("current_participants")
    private Integer currentParticipants;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;


    public ActivityListVo() {
    }

    public ActivityListVo(Long id, String aname, String ename, LocalDate activityStartTime, String activityDetail, LocalDate activityEndTime, LocalDate signupStartTime, LocalDate signupEndTime, String image, Integer status, String location, Integer capacity, Integer currentParticipants, LocalDateTime createTime, LocalDateTime updateTime) {
        this.id = id;
        this.aname = aname;
        this.ename = ename;
        this.activityStartTime = activityStartTime;
        this.activityDetail = activityDetail;
        this.activityEndTime = activityEndTime;
        this.signupStartTime = signupStartTime;
        this.signupEndTime = signupEndTime;
        this.image = image;
        this.status = status;
        this.location = location;
        this.capacity = capacity;
        this.currentParticipants = currentParticipants;
        this.createTime = createTime;
        this.updateTime = updateTime;
    }

    /**
     * 获取
     * @return id
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置
     * @param id
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取
     * @return aname
     */
    public String getAname() {
        return aname;
    }

    /**
     * 设置
     * @param aname
     */
    public void setAname(String aname) {
        this.aname = aname;
    }

    /**
     * 获取
     * @return ename
     */
    public String getEname() {
        return ename;
    }

    /**
     * 设置
     * @param ename
     */
    public void setEname(String ename) {
        this.ename = ename;
    }

    /**
     * 获取
     * @return activityStartTime
     */
    public LocalDate getActivityStartTime() {
        return activityStartTime;
    }

    /**
     * 设置
     * @param activityStartTime
     */
    public void setActivityStartTime(LocalDate activityStartTime) {
        this.activityStartTime = activityStartTime;
    }

    /**
     * 获取
     * @return activityDetail
     */
    public String getActivityDetail() {
        return activityDetail;
    }

    /**
     * 设置
     * @param activityDetail
     */
    public void setActivityDetail(String activityDetail) {
        this.activityDetail = activityDetail;
    }

    /**
     * 获取
     * @return activityEndTime
     */
    public LocalDate getActivityEndTime() {
        return activityEndTime;
    }

    /**
     * 设置
     * @param activityEndTime
     */
    public void setActivityEndTime(LocalDate activityEndTime) {
        this.activityEndTime = activityEndTime;
    }

    /**
     * 获取
     * @return signupStartTime
     */
    public LocalDate getSignupStartTime() {
        return signupStartTime;
    }

    /**
     * 设置
     * @param signupStartTime
     */
    public void setSignupStartTime(LocalDate signupStartTime) {
        this.signupStartTime = signupStartTime;
    }

    /**
     * 获取
     * @return signupEndTime
     */
    public LocalDate getSignupEndTime() {
        return signupEndTime;
    }

    /**
     * 设置
     * @param signupEndTime
     */
    public void setSignupEndTime(LocalDate signupEndTime) {
        this.signupEndTime = signupEndTime;
    }

    /**
     * 获取
     * @return image
     */
    public String getImage() {
        return image;
    }

    /**
     * 设置
     * @param image
     */
    public void setImage(String image) {
        this.image = image;
    }

    /**
     * 获取
     * @return status
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置
     * @param status
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取
     * @return location
     */
    public String getLocation() {
        return location;
    }

    /**
     * 设置
     * @param location
     */
    public void setLocation(String location) {
        this.location = location;
    }

    /**
     * 获取
     * @return capacity
     */
    public Integer getCapacity() {
        return capacity;
    }

    /**
     * 设置
     * @param capacity
     */
    public void setCapacity(Integer capacity) {
        this.capacity = capacity;
    }

    /**
     * 获取
     * @return currentParticipants
     */
    public Integer getCurrentParticipants() {
        return currentParticipants;
    }

    /**
     * 设置
     * @param currentParticipants
     */
    public void setCurrentParticipants(Integer currentParticipants) {
        this.currentParticipants = currentParticipants;
    }

    /**
     * 获取
     * @return createTime
     */
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    /**
     * 设置
     * @param createTime
     */
    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取
     * @return updateTime
     */
    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置
     * @param updateTime
     */
    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public String toString() {
        return "ActivityListVo{id = " + id + ", aname = " + aname + ", ename = " + ename + ", activityStartTime = " + activityStartTime + ", activityDetail = " + activityDetail + ", activityEndTime = " + activityEndTime + ", signupStartTime = " + signupStartTime + ", signupEndTime = " + signupEndTime + ", image = " + image + ", status = " + status + ", location = " + location + ", capacity = " + capacity + ", currentParticipants = " + currentParticipants + ", createTime = " + createTime + ", updateTime = " + updateTime + "}";
    }
}
